package models;

import play.data.validation.MaxSize;
import play.data.validation.Required;
import play.db.jpa.GenericModel;

import javax.persistence.*;
import java.util.*;
/**
 * Created with IntelliJ IDEA.
 * User: Daniel
 * Date: 25/06/12
 * Time: 04:21 PM
 * To change this template use File | Settings | File Templates.
 */
@Entity(name = "hidmodelosimulacion")
public class Hidmodelosimulacion extends GenericModel {

    @Id
    @SequenceGenerator(name="hidmodelosimulacion_seq", sequenceName="hidmodelosimulacion_modsimid_seq", allocationSize=0)
    @GeneratedValue(strategy=GenerationType.SEQUENCE, generator="hidmodelosimulacion_seq")
    private int modsimid;

    @ManyToOne
    @JoinColumn(name = "fk_modsimid")
    private Hidmodelosimulacion hidmodelosimulacion;

    @Required(message = "Debe ingresar la nombre del modelo pertenece")
    @MaxSize(30)
    private String modsimnom;


    private double modsimlatmin;
    private double modsimlatmax;
    private double modsimlongmin;
    private double modsimlongmax;
    private int modsimesce;
    private boolean modsimest;

    @OneToMany(mappedBy = "hidmodelosimulacion")
    private List<Hidmodelosimulacion> hidmodelosimulacions;

    @ManyToMany(mappedBy = "hidmodelosimulacions")
    private List<Hidusuario> hidusuarios;

    @OneToMany(mappedBy = "hidmodelosimulacion")
    private List<Hidcomponente> hidcomponentes;

    public Hidmodelosimulacion() {
    }

    public Hidmodelosimulacion(int modsimid, Hidmodelosimulacion hidmodelosimulacion, String modsimnom, double modsimlatmin, double modsimlatmax, double modsimlongmin, double modsimlongmax, int modsimesce, boolean modsimest, List<Hidmodelosimulacion> hidmodelosimulacions, List<Hidusuario> hidusuarios, List<Hidcomponente> hidcomponentes) {
        this.modsimid = modsimid;
        this.hidmodelosimulacion = hidmodelosimulacion;
        this.modsimnom = modsimnom;
        this.modsimlatmin = modsimlatmin;
        this.modsimlatmax = modsimlatmax;
        this.modsimlongmin = modsimlongmin;
        this.modsimlongmax = modsimlongmax;
        this.modsimesce = modsimesce;
        this.modsimest = modsimest;
        this.hidmodelosimulacions = hidmodelosimulacions;
        this.hidusuarios = hidusuarios;
        this.hidcomponentes = hidcomponentes;
    }

    public int getModsimid() {
        return modsimid;
    }

    public void setModsimid(int modsimid) {
        this.modsimid = modsimid;
    }

    public Hidmodelosimulacion getHidmodelosimulacion() {
        return hidmodelosimulacion;
    }

    public void setHidmodelosimulacion(Hidmodelosimulacion hidmodelosimulacion) {
        this.hidmodelosimulacion = hidmodelosimulacion;
    }

    public String getModsimnom() {
        return modsimnom;
    }

    public void setModsimnom(String modsimnom) {
        this.modsimnom = modsimnom;
    }

    public double getModsimlatmin() {
        return modsimlatmin;
    }

    public void setModsimlatmin(double modsimlatmin) {
        this.modsimlatmin = modsimlatmin;
    }

    public double getModsimlatmax() {
        return modsimlatmax;
    }

    public void setModsimlatmax(double modsimlatmax) {
        this.modsimlatmax = modsimlatmax;
    }

    public double getModsimlongmin() {
        return modsimlongmin;
    }

    public void setModsimlongmin(double modsimlongmin) {
        this.modsimlongmin = modsimlongmin;
    }

    public double getModsimlongmax() {
        return modsimlongmax;
    }

    public void setModsimlongmax(double modsimlongmax) {
        this.modsimlongmax = modsimlongmax;
    }

    public int getModsimesce() {
        return modsimesce;
    }

    public void setModsimesce(int modsimesce) {
        this.modsimesce = modsimesce;
    }

    public boolean isModsimest() {
        return modsimest;
    }

    public void setModsimest(boolean modsimest) {
        this.modsimest = modsimest;
    }

    public List<Hidmodelosimulacion> getHidmodelosimulacions() {
        return hidmodelosimulacions;
    }

    public void setHidmodelosimulacions(List<Hidmodelosimulacion> hidmodelosimulacions) {
        this.hidmodelosimulacions = hidmodelosimulacions;
    }

    public List<Hidusuario> getHidusuarios() {
        return hidusuarios;
    }

    public void setHidusuarios(List<Hidusuario> hidusuarios) {
        this.hidusuarios = hidusuarios;
    }

    public List<Hidcomponente> getHidcomponentes() {
        return hidcomponentes;
    }

    public void setHidcomponentes(List<Hidcomponente> hidcomponentes) {
        this.hidcomponentes = hidcomponentes;
    }
}
